import React, { Component } from 'react'
class People extends Component{
  render(){
    return (
      <div>
        <h1>我是 people组件</h1>
        <p>我的名字是：{this.props.name},我的年龄：{this.props.age}</p>
        <p>我的爱好：{this.props.hobby}</p>
      </div>
    )
  }
}
class Boy extends Component{
  render(){
    return (
      <div>
        <h1>我是 Boy组件</h1>
        <p>我的名字是：{this.props.name},我的年龄：{this.props.age}</p>
        <p>我的爱好：{this.props.hobby}</p>
      </div>
    )
  }
}
const PropUsername =  (Component)=> {
  const NewComponent = (props) =>{ 
    return <Component {...props} age='13' hobby='吃饭睡觉打豆豆'></Component>
   }
   return NewComponent
  }
const PropsPeople = PropUsername(People)
const PropsBoy = PropUsername(Boy)
export class AddProps extends Component {
  render() {
    return (
      <div>
        <People></People>
        <Boy></Boy>
        <h3>这里是使用高阶组件实现的多个props传值</h3>
      {/* 不同的内容的props还是需要手动的传 相同的可以放到高阶组件中去添加*/}
        <PropsPeople name='张三'></PropsPeople>
        <PropsBoy name='李四'></PropsBoy>
      </div>
    )
  }
}

export default AddProps